package com.wu.project.admin.dao;

import com.wu.project.admin.entity.*;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface GoodsDao {

    /**
     * 保存商品信息
     *
     * @param list list
     */
    void insertGoodsList(List<GoodsDTO> list);

    List<GoodsDTO> queryGoodsList(GoodsQueryVO goodsQueryVO);

    Integer queryGoodsCount(GoodsQueryVO goodsQueryVO);

    Integer downGoods(GoodsQueryVO goodsQueryVO);

    Integer updateGoods(GoodsDTO goodsDTO);

    Integer queryGoodsThree(GoodsDTO goodsDTO);

    Integer updateGoodsThree(GoodsDTO goodsDTO);

    Integer insertGoodsThree(GoodsDTO goodsDTO);

    List<GoodsTypeOne> queryTypeOne();

    Integer addOneType(String oneTypeName, String createTime, String state);

    Integer updateOneType(GoodsTypeOne goodsTypeOne);

    Integer deleteOneType(GoodsTypeOne goodsTypeOne);

    List<GoodsTypeTwo> queryTypeTwo(Integer oneId);

    Integer addTwoType(Long twoId, String twoTypeName, String createTime, String state);

    Long getTwoMaxid();

    Integer addOneTwo(Long oneId, Long twoId, String createTime, String state);

    Integer updateTwoType(GoodsTypeTwo goodsTypeTwo);

    Integer deleteTwoType(GoodsTypeTwo goodsTypeTwo);

    List<GoodsTypeTwo> queryTwoAll();

    List<ShopThreeDTO> queryThreeList(Integer twoId);

    Long getThreeMaxId();

    Integer addThreeType(Long threeId, String threeTypeName, String createTime, String state);

    Integer addTwoThree(Long twoId, Long threeId, String createTime, String state);

    Integer deleteThree(ShopThreeDTO shopThreeDTO);

    Integer updateThreeType(ShopThreeDTO shopThreeDTO);

    List<Map<String,Object>> queryAllThreeTyoe();
}
